package com.aric.springbootmusic.service;

import com.aric.springbootmusic.entity.dto.AddMusicDTO;
import com.aric.springbootmusic.entity.dto.EditMusicDTO;
import com.aric.springbootmusic.entity.param.FindMusicParam;
import com.aric.springbootmusic.entity.param.QueryAllMusicParam;
import com.aric.springbootmusic.entity.pojo.Music;
import com.aric.springbootmusic.exceptions.NameDuplicationException;
import com.aric.springbootmusic.utils.Result;
import com.baomidou.mybatisplus.extension.service.IService;

public interface MusicService extends IService<Music> {
    Result findAllMusicByQueryCondition(FindMusicParam findMusicParam);

    Result addSingleMusic(AddMusicDTO musicDTO) throws NameDuplicationException;

    Result removeMusicById(String id);

    Result findSingleMusic(String id);

    Result modifyMusic(EditMusicDTO musicDTO);
    Result findShowMusic(QueryAllMusicParam queryAllMusicParam);
}
